<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>RVM : Core Runtime Services</title>
        <link rel="stylesheet" href="styles/site.css" type="text/css" />
        <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>

    <body>
        <div id="page">
            <div id="main">
                <div id="main-header" class="pageSectionHeader">
                    <h1 id="title-heading" class="pagetitle">
                                                <span id="title-text">
                            RVM : Core Runtime Services
                        </span>
                    </h1>

                    <div class="page-metadata">
                        <p>This page last changed on Mar 11, 2007 by <font color="#0050B2">pdonald</font>.</p>
                    </div>
                </div>

                <div id="content" class="view">
                    <div id="main-content" class="wiki-content group">
                    <p>The Jikes RVM runtime environment implements a variety of services which a Java application relies upon for correct execution. The services include:</p>

<ul>
	<li><a href="Object%2BModel.html">Object Model</a>: The way objects are represented in storage.</li>
	<li><a href="Class%2Band%2BCode%2BManagement.html">Class and Code Management</a>: The mechanism for loading, and representing classes from class files. The mechanism that triggers compilation and linking of methods and subsequent storage of generated code.</li>
	<li><a href="Thread%2BManagement.html">Thread Management</a>: thread creation, scheduling and synchronization/exclusion</li>
	<li><a href="JNI.html">JNI</a>: Native interface for writing native methods and invoking the virtual machine from native code.</li>
	<li><a href="Exception%2BManagement.html">Exception Management</a>: hardware exception trapping and software exception delivery.</li>
	<li><a href="Bootstrap.html">Bootstrap</a>: getting an initial Java application running in a fully functional Java execution environment</li>
</ul>


<p>The requirement for many of these runtime services is clearly visible in language primitives such as new(), throw() and in java.lang and java.io APIs such as Thread.run(), System.println(), File.open() etc. Unlike conventional Java APIs which merely modify the state of Java objects created by the Java application, implementation of these primitives requires interaction with and modification of the platform (hardware and system software) on which the Java application is being executed. </p>
                    </div>

                    
                 
                </div>             </div> 
            <div id="footer" style="background: url(http://docs.codehaus.org/images/border/border_bottom.gif) repeat-x;">
                <p><small>Document generated by Confluence on Feb 17, 2012 10:24</small></p>
            </div>
        </div>     </body>
</html>
